package com.hh.game.service.gateway.codec.websocket;

public enum MessageDataType {
    /**
     * 字节流
     */
    BYTE((byte) 0),
    /**
     * json
     */
    JSON((byte) 1),
    /**
     * STRING
     */
    STRING((byte) 2),
    ;

    private byte type;

    MessageDataType(byte type) {
        this.type = type;
    }

    public byte getType() {
        return type;
    }

    public static boolean isByte(byte type) {
        switch (type) {
            case (byte) 0:
                return true;
            case (byte) 1:
                return false;
            default:
                throw new IllegalArgumentException("type[" + type + "] not exist");
        }
    }

    public static MessageDataType getType(byte type) {
        switch (type) {
            case (byte) 0:
                return BYTE;
            case (byte) 1:
                return JSON;
            case (byte) 2:
                return STRING;
            default:
                return null;
        }
    }
}
